package net.lab1024.sa.admin.module.business.oa.reservation.domain.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.swagger.v3.oas.annotations.media.Schema;
import java.time.LocalDateTime;
import lombok.Data;
import net.lab1024.sa.base.common.json.serializer.FileKeyVoSerializer;

/**
 * 预约记录 列表VO
 *
 * @Author TianYuan
 * @Date 2025-07-22 16:21:55
 * @Copyright TianYuan
 */

@Data
public class ReservationVO {


    @Schema(description = "预约记录主键ID")
    private Long reservationId;

    @Schema(description = "企业ID")
    private Long enterpriseId;

    @Schema(description = "企业名称")
    private String enterpriseName;

    @Schema(description = "预约类型")
    private String reservationType;

    @Schema(description = "预约人姓名")
    private String reservationUser;

    @Schema(description = "预约人电话")
    private String reservationPhone;

    @Schema(description = "预约代码")
    private String reservationCode;

    @Schema(description = "预约时间")
    private LocalDateTime reservationTime;

    @Schema(description = "预约状态")
    private String reservationState;

    @Schema(description = "附件资料1")
    @JsonSerialize(using = FileKeyVoSerializer.class)
    private String reservationFile1;

    @Schema(description = "附件资料2")
    @JsonSerialize(using = FileKeyVoSerializer.class)
    private String reservationFile2;

    @Schema(description = "附件资料3")
    private String reservationFile3;

    @Schema(description = "附件资料4")
    private String reservationFile4;

    @Schema(description = "附件资料5")
    private String reservationFile5;

    @Schema(description = "是否删除0否 1是")
    private Integer deletedFlag;

    @Schema(description = "备注")
    private String remark;

    @Schema(description = "更新时间")
    private LocalDateTime updateTime;

    @Schema(description = "创建时间")
    private LocalDateTime createTime;

}
